
"""
@名称：练习
@作者：Fida1214
@日期：2025/4/9
"""

"""
第三题，星际飞船
"""

import random

class Spaceship:
    def __init__(self, name, speed, fuel, weapons):
        self.name = name
        self.speed = speed
        self.fuel = fuel
        self.weapons = weapons
        self.damage = 0

    def travel(self, distance):
        fuel_needed = distance / self.speed
        if self.fuel >= fuel_needed:
            self.fuel -= fuel_needed
            print(f"{self.name} 成功航行了 {distance} 光年，还剩下 {self.fuel:.2f} 单位燃料。")
        else:
            print(f"{self.name} 燃料不足，无法航行 {distance} 光年。")

    def attack_asteroid(self):
        weapon = random.choice(self.weapons)
        if random.random() < 0.8:
            self.damage += 10
            print(f"{self.name} 使用 {weapon} 攻击小行星，但受到了 10 点损伤。当前损伤值: {self.damage}")
        else:
            print(f"{self.name} 使用 {weapon} 成功摧毁了小行星，没有受到损伤。")

enterprise = Spaceship("企业号", 10, 100, ["激光炮", "离子炮"])

enterprise.travel(50)
enterprise.attack_asteroid()
